#Tuple - 元组，是一种有序且不可更改的集合

#创建一个元组可以使用() 或者 tuple() 
#空的元组
# nums=()
# nums = tuple()  
# print(nums) 

#非空的元组
# nums=(2,4,6,8,8)  
# nums=tuple([2,4,6,8,8])   #新建一个元组，将列表中的元素依次存放进来
# print(nums)     #(2, 4, 6, 8, 8)   存放有序 ，元素可以重复  

ss=('python','java','web',20) 
print(ss)  

# in  检查元组是否包含给定的元素
print('js' in ss)  #False

#len() 元组长度
print(len(ss)) 

#for in 遍历
for x in ss:
    print(x) 

#[索引]获取元组中的元素
print(ss[0]) 
print(ss[-1]) 

#元组中的元素不能重新赋值
#ss[0] = 'js'   #TypeError: 'tuple' object does not support item assignment

# +   合并，生成新的元组，原来的元组是不变的 
ss2=ss+(3,5)
print(ss)  
print(ss2) 

# *n  元素复制  原来的元组不变
print(ss*2)


# 下面创建的是一个int
# ts=(1)
# 创建仅有一个元素的元组
# ts=(1,)
# print(ts,type(ts)) 

#tuple->list
# ls = list((20,21,6,18))    #创建一个列表，将元组中的元素依次添加到列表中
# ls.sort()
# print(ls) 


ts=('hello','python','java','web','js')
print(max(ts),min(ts))     


# tuple用处
# 函数返回值用tuple存放
# 可变参数

def test(*args):
    print(args)
    
test(2,5,3,4) 


dd = ('python',[2,4],20)
print(dd[1][1])
dd[1][1]=33
print(dd) 
# dd[1]=[2,33]  #TypeError: 'tuple' object does not support item assignment








